package cn.lbl.face2025;

import java.util.Arrays;

public class 合并数组 {

    public static void merge(int[] nums1, int m, int[] nums2, int n) {
        // 1.先创建一个nums1大小的空数组
        int[] result = new int[nums1.length];
        // 2.定义两个指针
        int nums1Point = 0;
        int nums2Point = 0;



        // 3.以nums1Point为最大长度，进行循环比较
        for(int i = 0; i < nums1.length; i++){

            if (nums2Point >= n) {
                result[i] = nums1[nums1Point];
                nums1Point++;
                continue;
            }

            if(nums1Point < m && nums1[nums1Point] < nums2[nums2Point]){
                result[i] = nums1[nums1Point];
                nums1Point++;
            }else{
                result[i] = nums2[nums2Point];
                nums2Point++;
            }
        }
        nums1 = result;
        System.out.println(Arrays.toString(nums1));
    }

    public static void main(String[] args) {
        int[] nums1 = {0, 0, 0, 0, 0};
        int[] nums2 = {1, 2, 3, 4, 5};
        merge(nums1, 0, nums2, 5);
    }
}
